package com.hangxin.commons.util;

import java.security.MessageDigest;

import sun.misc.BASE64Encoder;

import java.util.Random;

public class MD5Util {
	public final static String encode(String s) {
		try {
			MessageDigest md5 = MessageDigest.getInstance("MD5");
			byte[] md = md5.digest(s.getBytes());
			BASE64Encoder be = new BASE64Encoder();
			return be.encode(md);
		} catch (Exception e) {
			return null;
		}
	}


	public static String getCharAndNumr(int length)   
	{   
	    String val = "";   
	           
	    Random random = new Random();   
	    for(int i = 0; i < length; i++)   
	    {   
	        String charOrNum = random.nextInt(2) % 2 == 0 ? "char" : "num"; // 输出字母还是数字   
	               
	        if("char".equalsIgnoreCase(charOrNum)) // 字符串   
	        {   
	            //int choice = random.nextInt(2) % 2 == 0 ? 65 : 97; //取得大写字母还是小写字母   
	        	int choice =97;//只要小写字母
	        	val += (char) (choice + random.nextInt(26));   
	        }   
	        else if("num".equalsIgnoreCase(charOrNum)) // 数字   
	        {   
	            val += String.valueOf(random.nextInt(10));   
	        }   
	    }   
	           
	    return val;   
	} 

}
